The present invention relates to computer software for aiding the execution of business activities for an individual (User) acting alone or for a group of individuals (Users) employing a plurality of networked computer terminals. In one of its embodiments, the invention is a computer-readable storage medium storing a computer program which can cause a computer to function as a contact and activity manager operating according to the instructions of the program. More particularly, the invention can be described as a computer-readable medium for causing a computer to function as a contact and activity manager wherein a computer-readable storage medium stores a computer program having an interface for accessing a database of contact records containing information about a plurality of different contacts (subjects); an interface for accessing a database of activity records containing activity information about a plurality of human-implicated activities wherein activity records are linked to a contact record; an interface for accessing a database of topic records containing topic information about a plurality of topics, each of which identifies a set of activities wherein each topic record is linked to one or more activity records; a processing module for selecting all activity records linked to a contact record; and a processing module for selecting all activity records linked to a topic record.
The invention can also be characterized as a series of operations performed by a computer under the direction of a computer program.
While the invention is advantageously utilized in business environments where the activities managed, planned and recorded are those of officers, employees, and agents of the business, the invention is not so restricted and can be used to advantage in other settings, as will become apparent to those skilled in the art as the invention is described in greater detail below. For convenience, however, the invention will be described and explained, for the most part, with reference to its application in a business setting where multiple Users (officers, employees, agents, etc.) are functionally connected through a computer network of individual work stations and whose activities are to be integrated for better productivity and efficiency. The invention""s applicability to other situations will then be obvious to those skilled in the art with little or no further explanation required.
The basic activity management and recordation program, of which the present invention is an important improvement, is, and has been for several years, successfully marketed by Applicant under the commercial name xe2x80x9cTeleMagic/400.xe2x80x9d The TeleMagic/400 program advanced the art by, for the first time, interconnecting a plurality of Users to allow integrated effort in a way not possible with manual systems. Unlike many xe2x80x9cworkflowxe2x80x9d or xe2x80x9cwork managementxe2x80x9d computer programs which are computerizations of manual systems, the TeleMagic/400 program is a tool that changes the way business is conducted in a truly fundamental sense. Its benefits include greater efficiency, control and productivity. The present invention expands the capabilities of, and adds new dimensions to, the TeleMagic/400 program to the end of creating a new, different and improved product.
The central concept of the present invention for the management of contacts and activities that are typically used and carried on by Users of an organization is the creation, storage and retrieval of data contained in three sets of linked data records (databases): xe2x80x9cContactxe2x80x9d records; xe2x80x9cActivityxe2x80x9d records; and xe2x80x9cTopicxe2x80x9d records. As used herein, xe2x80x9clinkedxe2x80x9d records refers to records which can be recalled from the totality of stored records as an independent and reviewable group of records. The terms xe2x80x9cContact,xe2x80x9d xe2x80x9cActivity,xe2x80x9d and xe2x80x9cTopicxe2x80x9d are used as convenient labels to distinguish between records which contain different (but possibly overlapping) subject matter. Obviously, other labels can be used without in any way departing from the invention.
Contact records (sometimes referred to simply as Contacts) are typically customer records or project records (although they may be any other set of records to which Activities can be logically related) where, inter alia, relatively static information (names, addresses, telephone numbers, etc.) is stored. For convenience and simplicity, the invention will be explained in relation to a set of customer records as the Contact records, since that is typical of many businesses, but with the understanding that the invention is not so limited.
xe2x80x9cActivityxe2x80x9d records (sometimes referred to simply as Activities) record human-implicated (or assisted) events that have happened or are scheduled to happen in the future (such as a telephone call, a document, a fax, a scheduled visit), information to share, a question that needs to be answered, some action that has been or needs to be taken, etc.
xe2x80x9cTopicxe2x80x9d records (sometimes referred to simply as Topics) identify in some detail the relationship between grouped Activity records to enable the easy and quick retrieval of only those activities relating to a particular event. When the number or subject matter of a Topic requires, xe2x80x9cSubtopicxe2x80x9d records (sometimes referred to simply as Subtopics) can be created which, like Topics, identify in some detail the relationship between grouped Activity records for a sub-group of Activity records all related to the same Topic. Since Topics and Subtopics are so similar, wherever Topics are mentioned herein, it is to be understood that the statement applies to Subtopics as well, unless otherwise stated.
Contact records, Activity records and Topic records advantageously include two data structures: (1) data entered into named fields with a limited numbers of characters (e.g., name, address, subject matter, date, contact person, etc.) which data is, for convenience, referred to herein as xe2x80x9cStructuredxe2x80x9d data; and (2) narrative data that can be of a free-flowing nature entered into fields of virtually unlimited space, including, for example, alpha-numeric data, graphic data, video data, voice data, etc. (e.g., xe2x80x9cComments,xe2x80x9d xe2x80x9cDiscussion,xe2x80x9d xe2x80x9cNotes,xe2x80x9d recorded telephone messages, videos, etc.) which data is, for convenience, referred to herein as xe2x80x9cUnstructuredxe2x80x9d data.
In a typical scenario, Contacts are records of customers, Activities are records of information about interactions with, and tasks to be performed for, such customers, as well as records of tasks relating to internal projects or administrative activities. Topics are logical groupings of Activities beyond their common association with a Contact and may contain Activities linked to several different Contacts, as well as Activities not linked to any Contact. Contact records typically contain Structured data of the customer""s essential identifying and locating information (name, address, telephone, fax, Internet, payment terms, contact person, etc.), business activities (sales records, etc.), as well as Unstructured data that may include the background of the business done with the customer, its relationship to other customers, as well as any other information required to give a User an understanding of how to best serve the customer. Topic (and Subtopic) records, which will include both Structured and Unstructured data, permit the substance of a set of grouped Activities to be perceived without having to review the records themselves.
In the present invention, Activity records are typically linked with a Contact record, but not invariably so. While Activities typically relate to a particular customer or project (Contact record) and thus should be linked to that record (and in the preferred embodiment, will do so as a default), it is possible to have an Activity that is linked only to another Activity, or only to a Topic, or free-standing (related only, for example, to a User""s calendar). In most cases, however, Activities will be linked to one Contact.
Every created Activity, Contact and Topic is stored for later retrieval. The advantage of the present invention that flows from the unique dynamic relationship of the stored data is the ability to easily and logically enter data as it is gathered and then be able to quickly retrieve from the entire body of stored data just that data required to be fully informed on a particular subject. Utilizing this basic structure, the invention is capable of managing and recording a company""s internal activities and contacts with customers (including telephone contacts, fax and mail contacts, intra-company communications and tasks, etc.) and permitting recorded Activities to be recalled and reviewed by all authorized Users. By implementation and use of the present invention, Users can be quickly informed of Activities that have occurred and are in process with regard to each customer or project and can, therefore, intelligently respond to a customer or co-worker on a current basis (virtually eliminating the xe2x80x9cI""ll have to get back to youxe2x80x9d syndrome).
The particular Structured and Unstructured data that is contained in any Contact, Topic or Activity record is a function of the particular information that the program is called upon to manage for a particular (business) entity. For every business or project to be managed, the record fields will be defined to reflect the information and activities essential to and typical of that business or project. By way of example, and for purposes of explaining the invention, the preferred embodiment will be described in connection with a business that has customers to whom goods and services are marketed, sold and supported (serviced) (such as a company that markets, sells and supports a computer program).
With Contacts, Activities and Topics as basic building blocks, a variety of useful record sets can be created, including User""s ToDo lists which find their genesis in the Activity record. An Activity record can record: (1) events that are short in duration and can be done anytime within a short time span (usually one day) and, for convenience, are referred to herein as xe2x80x9cToDo Activitiesxe2x80x9d (such as telephone calls, letters, faxes etc.); (2) events that need to be done or take place at a precise time which, for convenience, are referred to herein as xe2x80x9cCalendar Activitiesxe2x80x9d (such as meetings, conference calls, etc); and (3) tasks which are generally longer in duration (may take days, weeks or months), for which the start times and/or required end times are geared to other Activities or to ToDo Activities or Calendar Activities which, for convenience, are referred to herein as xe2x80x9cProject Activities.xe2x80x9d
One of the outstanding features of the present invention is the ability to link Activities and Contacts and Topics in various creative ways that provide essential information in useable forms on demand. One of the dynamic elements of the invention is the Activity record.
To create an Activity record, a User enters Structured data (in one of several well-known ways, such as by selecting an item from a pull-down menu or keying from a keyboard) into pre-defined fields representing essential elements of the Activity which, for the company selected as the example, could include: Due Date (for ToDo Activity); Start and Complete Date (for Project Activity); Date and Time (for Calendar Activity); Recipient (identification of the person the Activity is directed to); Sender (identification of the User initiating the Activity); Type (of Activity: Action, Info, ???, Resp, or F/Up); and Priority (A, B, C=importance/1-9=urgency). The Activity record can also include Unstructured dataxe2x80x94free-form notes about the Activity (to either the Sender or the Recipient). Every Activity is marked either xe2x80x9cpending,xe2x80x9d xe2x80x9ccompletexe2x80x9d or xe2x80x9con hold.xe2x80x9d The recordable Activity data is both historical (events that have happened) and prospective (events that are scheduled to happen in the future) and are referred to herein collectively as xe2x80x9cdynamic data.xe2x80x9d
A User""s ToDo list is created by the program selecting from all Activities that set of Activities with the User identified as Recipient which have not yet been marked as completed.
The defined, selectable xe2x80x9cTypexe2x80x9d of Activities are, in the example, limited to: Action, Info, ???, Resp, or F/Up.
An Action Activity is selected to record a past or future action, such as a telephone call, a fax, etc. One of the features of the invention is that it can be used to xe2x80x9canticipatexe2x80x9d an event. For example, if, during a telephone conversation, arrangements are made for a follow-up telephone contact at a specified date in the future, an Action Activity can be created entering that future date in the Date field. That anticipated telephone call will be added to the ToDo list of the User identified in the Action Activity as the Recipient (which could, and frequently would, be the Sender). On the day specified, the call will appear on the Recipient""s ToDo list, and if the call is not received, some appropriate action can then be taken as a result (e.g., call the person, send a fax, etc.). If the call does come in as scheduled, the User receiving the call will have the Activity record available, together with whatever Unstructured data it might contain relating to the anticipated call, and can quickly gather and review other Activities that are linked to its associated Contact record, as well as other Activities that might have been linked to that Activity under a Topic, and thereby be able to handle the call effectively.
An Info Activity is created to draw a User""s attention to a narrative. The ??? Activity is created to pose a question that requires another User""s response, and the Resp Activity is created as a response to a ??? Activity. The F/Up Activity is created when an Activity does not require permanent recordation and is best extinguished from the system after it is completed.
All Activity types created must identify a Recipient (even if it is the Sender).
An Activity requiring some action to be taken (by the User identified as xe2x80x9cRecipientxe2x80x9d) is, when created, automatically added to the Recipient""s ToDo list. Thus, every User will have, and can view, a list of the Activities that are identified for him/her (Activity or ToDo list). A User""s ToDo list will typically include Activities which were initiated by other Users. The background, history and context of any Activity can be quickly retrieved for review by the Recipient charged with acting on that Activity item by: (1) calling up the Activity records linked to the Contact record with which that Activity item is identified; (2) calling up and receiving the other Activities of the same Topic(s) with which the Activity is identified and reviewing those Topic records; (3) calling up and reviewing all other Activities that have been related to that Activity (Activity records can selectively be related to each other which are not related to the same Contact record or Topic). The need to speak to another person to be informed of past and current Activities regarding the Contact or Project involved is eliminated (as is waiting for that person to be available to talk to). The system can permit all Users to be privy to the performed, as well as the to-be-performed, Activity lists of every other User. In this way, the company is better able to xe2x80x9cthink with one mind and speak with one voice.xe2x80x9d It is also possible to restrict some of the information in the system to a limited number of Users authorized to view that data.
When a plurality of different Activities are frequently triggered by some event, it is advantageous for the system to create all of the Activities automatically when the triggering event is recognized. Such a group of Activities is referred to herein as an Activity Plan and encompasses any two or more Activities that are created in response to some predetermined triggering event.
For example, if an inquiry is received regarding a particular product, an Activity Plan can be initiated after a Contact is created that includes creating an Activity requesting a Recipient to send certain described literature to the Contact, creating an Activity requesting that a Recipient call the Contact at some designated time in the future to make sure they got the literature, and creating an Activity requesting a Recipient to research the Contact prior to the scheduled follow-up call. Thus, with essentially one keystroke, three Activities are created directed to one or more Recipients for concerted action that, when recorded into the system, enables those who are asked to work on the matter to know what other Recipients have done, what other Recipients are scheduled to do, and the information they have discovered that will allow the Contact to be best served. It will be obvious to those skilled in the art that Activity Plans can be useful in a wide variety of situations and can include a large number of pre-planned Activities, depending on the circumstances.
One very practical application of the present invention and the Activity Plan concept described above is the automation of responses to inquiries received by a web site. As is typical, a web site can have a number of different selectable items indicating a variety of interests in different information available from the web site sponsor. Processing requests for particular information when a variety of different information is available is becoming an increasing problem as the number Users of the Internet continues to increase and the number of xe2x80x9chitsxe2x80x9d that a web site experiences becomes correspondingly larger. With the present invention in place, it is possible for each inquiry to a web site to generate an e-mail message to the web site sponsor containing the information of the selected items that identify the particular information of interest. This e-mail message, containing also the requester""s (browser""s) identification and other information, can be used to automatically create a Contact and initiate an Activity Plan predetermined for the particular selected items identified by the e-mail message. The Activity Plan would automatically send Activities to those persons in the company whose job it is to respond to the particular inquiry carried by the e-mail message, as well as set up follow-up tasks and whatever else the company does to initiate contact with a potential customer.
In the preferred embodiment, the web site would be integrated into the invention and the need for an e-mail link would be eliminated.
An important feature of the invention is that every Activity item created can, and typically will, be automatically linked to a Contact and/or Topic record. This is accomplished by a default that requires that a Contact record be selected when an Activity record is created, whereby the newly created Activity is automatically identified with (linked to) the selected Contact record. There are occasions when it is important for certain Activity information to be attached to a Topic, even when the Activity is not associated with a particular Contact. For example, travel information for a trip associated with a sales trip to a Contact should be included in the Topic for that trip, even though the information is not associated with the Contact. In such cases, the default can be selectively overridden.
Selection of one of the Activity types brings up a screen that includes fields for entering the elements of that Activity type. For example, if an Action Activity is selected, a screen will appear with fields for entering Structured data identifying the date the Action is to be initiated, the person initiating the Action (Sender), the person to whom the Action is directed (Recipient), the relative priority of having the Action completed, the action to be taken, etc. For convenience, some of the fields will have default data automatically entered if no overriding data is entered. For example, the Sender default could be the person who logged onto the system at the terminal at which the Activity is being created; the Date could be the current date; etc. After the Structured data and Unstructured data are entered, the Activity is completed and the Action Activity is automatically added to the Recipient""s ToDo list. All of the information entered in creating that Action Activity is stored and retrievable by any User on the network (not just the Recipient). Since all Activities will generally be linked to one or more Topics, the Activity is available to anyone having an interest in the Topic and such person would be informed that the Recipient has responsibility to perform the particular Activity on a certain date, etc.
The essential dynamic organs of the present invention are the Contact records and associated screens for creating and displaying those records, the Activity records and associated screens for creating and displaying those records, the Topic (and Subtopic) records and the screens for creating and displaying those records, and processing modules that permit the various records to be related and grouped and data from them displayed. Various other useful lists (sets of record or sets of parts of records) can be generated from the recorded data of the Activities, Contacts and Topics, such as, for example, all of the present Activities being performed (not yet completed) for a customer; all of the Activities that have been completed for a customer; all of the Activities assigned to and not yet completed by User xe2x80x9cXxe2x80x9d; as well as many others.
As described above, Activities can be related by Contact and be linked to other Activities related to different Contacts. Such related and linked Activities can be a large set of records that may be too numerous for convenient review. Within the larger set, these Activities may be capable of being divided into subsets which are logically related. These logically related subsets are organized as topics with a Topic record created to define and explain the substance of the topic. In this way, relevant records can be more easily found and retrieved for review.
The present invention can include a module for task delegation (Task Delegation module) (sending an Activity to a Recipient) that permits the Sender-Recipient link to be bidirectional. That is, when an Activity is created that establishes an Action (or other Activity Type) that requires some task to be performed or response to be made by a Recipient, that task or response is not added to that Recipient""s ToDo list without limitation, restriction or pre-acceptance. Instead of the Recipient having to manually reject a task by creating another Activity to either send the task back to the Sender or to another Recipient (which the Recipient always has the option to do), the Sender will be alerted that the Recipient is unavailable (such as on vacation, or on a business trip, or not accepting new tasks, etc.). When that occurs, the Sender will have to modify the Activity in order to have it entered (a non-rejecting Recipient is a prerequisite to entering an Activity). The Task Delegation module creates a high level of sophistication by providing means by which the status of every User""s workload is recorded as a Daily Activity Profile and available to be taken into account in allocating tasks. Once a database of Daily Activity Profiles is created, the invention is able to monitor each User""s daily workload for available time. Using this information, the invention will permit, permit with warning, reject with warning or reject outright, an Activity sent by a User (Sender) to Recipients, depending on limits established relative to the Daily Activity Profiles. Each User is able to adjust his/her Daily Activity Profile as a way of regulating his/her workload.
The embodiment of the invention that includes a Task Delegation module is capable of (a) assessing a User""s daily workload and providing assistance in the management of that workload, and (b) providing a means of exchanging commitment dialog so that all Users can act in a common environment of committed action.
Accordingly, it is an object of the present invention to improve computer-based systems for assisting in the management of a business.
Another object is to improve internal and external business communications by recording and storing vital information about everyday business activities which information can be readily recalled and displayed in useful groupings.
Another object is to provide a system where, in the course of recording business activities, tasks are created that are delegated for completion to others using the system.
Still another object of the present invention is to provide a computer-readable medium for causing a computer to function as an improved contact and activity manager.
It is a further object that such contact and activity manager include accessible databases of subject records containing subject information about a plurality of subjects; activity records containing activity information about a plurality of human-assisted activities wherein each such activity record is linked to a subject record; topic records containing topic information about a plurality of topics, each of which identifies a set of activities wherein each topic record is linked to one or more activity records.
Still other objects and advantages of the present invention will become readily apparent to those skilled in this art from the following detailed description wherein I have shown and described only the preferred embodiment of the invention simply by way of illustration of the best mode contemplated by me of carrying out my invention. As will be realized, the invention is capable of modifications in various obvious respects, all without departing from the invention. Accordingly, the drawings and descriptions are to be regarded as illustrative in nature, and not as restrictive.